package org.wu.reggie.service;

import org.wu.reggie.dto.SetmealDto;
import org.wu.reggie.entity.Page;

import java.util.List;

public interface SetmealService {

    /**
     * 作用 展示套餐列表
     * @param page 当前页
     * @param pageSize 页面大小
     * @param name 菜品名称
     * @return
     */
    Page<SetmealDto> findByPage(Integer page, Integer pageSize, String name);

    /**
     * 作用 新增套餐
     * @param setmealDto
     */
    void save(SetmealDto setmealDto);

    /**
     * 通过 id查询菜品和菜品的口味
     * @param id
     * @return
     */
    SetmealDto findById(Long id);

    /**
     * 作用 修改套餐
     * @param setmealDto 页面传递过来的参数包含套餐和菜品
     */
    void updateWithDish(SetmealDto setmealDto);

    /**
     * 作用 批量起售禁售
     * @param status 前端状态
     * @param ids 前端id集合 可能是一个可能是多个
     */
    void updateSetmealStatus(Integer status, List<Long> ids);

    List<SetmealDto> findByCategoryId(Long categoryId, Integer status);
}
